<?
include ('lib/config.php');
include ('lib/f.php');
include ('lib/ReportMgr.inc');

header('Content-type: text/html; charset=UTF-8');
MSSQLConnect();

$proc='add';
$Parent = '#0';

 $name = '';
    $DivT = 'd';
    $FirstDate = '';
    $haveDetList = 0;
    $Operator = '';
    $SQL = "
    -- Пример
    select '2010-01-02 00:00:00' as dt, 100 as val, 'Gorcer' as det
    union all
    select '2010-01-04 00:00:00' as dt, 80 as val, 'Alex' as det
    union all
    select '2010-01-20 00:00:00' as dt, 20 as val, 'Gorcer' as det

    ";

    $header='Добавление нового отчета';

if (isset($_REQUEST['proc']))
{
include ('action.php');
$proc='add';

    $name = $_POST['name'];
    $DivT = $_POST['DivT'];
    $FirstDate = $_POST['FirstDate'];
    $haveDetList = $_POST['haveDetail'];
    $Operator = $_POST['Operator'];
    $Parent = $_POST['parent'];
    $SQL = $_POST['sql'];
   $name =  iconv('Windows-1251', 'UTF-8', $name);
   $SQL =  iconv('Windows-1251', 'UTF-8', $SQL);
}
else
if (isset($_REQUEST['q']))
{
    $id=intval($_REQUEST['q']);
    $proc='edit';
    $report = ReportMgr::getQueryByID($id);

    $name =  iconv('Windows-1251', 'UTF-8', $report->Name);
    $DivT = $report->DivideType;
    $FirstDate = $report->FirstDate;
    $haveDetList = $report->haveUserList;
    $Operator = $report->Operator;
    $Parent = $report->parent_id;
    $SQL =  iconv('Windows-1251', 'UTF-8', $report->sql);

                  $SQL = str_replace('\"', "'",$SQL);
              $SQL = str_replace('"', "'",$SQL);


     $header='Изменение отчета #'.$id.' "'.$name.'"';
}




?>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="template/style.css" rel="stylesheet" type="text/css" />
<script language="javascript" type="text/javascript" src="js/jquery-1.2.6.min.js"></script>
<script language="javascript" type="text/javascript" src="js/jquery.flot.js"></script>
<script type="text/javascript" src="js/ui.core.js"></script>
<script type="text/javascript" src="js/ui.datepicker.js"></script>
<script type="text/javascript" src="js/ui.datepicker-ru.js"></script>
<script language="JavaScript" type="Text/JavaScript" src="js/arc90_multiselect.js"></script>

<link href="css/multisellect.style.css" rel="stylesheet" type="text/css">
<link href="css/ui.all.css" rel="stylesheet" type="text/css">
</head>
<body>
 <script>

 function Del()
 {
  if (confirm('Вы уверены что хотите удалить отчет?'))
  {
      document.location.href='edit.php?q=<?=$id ?>&proc=del';
  }
 }

  $(document).ready(function(){

           $("#txtDateB").datepicker();
           $("input").css('width', '100%');
           $('#DivT').val('<?=$DivT ?>');
           $('#Operator').val('<?=$Operator ?>');

  });
 </script>
<br/>
<center>
<table cellpadding=0 cellspacing=0 border=0 class='txt' width='95%'>
<tr>
 <td width='250' valign='top'>
 <a href='/' target='_blank'><h1>GoRepo v.1.2</h1></a>
<?
        include('template/ReportList.php');
?>
 </td>
 <td valign="top">

 <h1><?=$header ?></h1>

 <?

 if (isset($err) && $err!=false)
 {
     var_dump($err);
 }

 ?>

       <form method='post'>
       <input type="hidden" name="proc" value="<?=$proc ?>"/>
        <table cellpadding="5" cellspacing="0" border="0" class='itemtop' width='600px'>
         <tr>
          <td width='150px'> Родительский отчет</td>
          <td> <input type='text' name='parent' value='<?=$Parent ?>'/></td>
         </tr>
         <tr>
          <td> Название</td>
          <td> <input type='text' name='name' value='<?=$name ?>'/></td>
         </tr>
         <tr>
          <td valign='top'> SQL</td>
          <td> <textarea name='sql' value='' style='width:100%;height:200px;'><?=$SQL ?></textarea></td>
         </tr>

          <tr>
          <td valign='top'> Дробление</td>
          <td>
            <select name='DivT' id='DivT'>
             <option value='y'>По годам</option>
             <option value='k'>По кварталам</option>
             <option value='m'>По месяцам</option>
             <option value='w'>По неделям</option>
             <option value='d'>По дням</option>
             <option value='h'>По часам</option>
             <option value='30min'>По 30 мин</option>
             <option value='15min'>По 15 мин</option>
             <option value='5min'>По 5 мин</option>
            </select>
          </td>
         </tr>

         <tr>
          <td valign='top'> Начальная дата</td>
          <td> <input id='txtDateB'  name="txtDateB" type="text" value="<?=$FirstDate ?>"></td>
         </tr>

         <tr>
          <td valign='top'> С детализацией</td>
          <td align="left"> <input type="checkbox" <?=($haveDetList==1)?'checked="true"':false ?> name='haveDetail'  id='haveDetail'></td>
         </tr>

          <tr>
          <td valign='top'> Принцип группировки</td>
          <td>
            <select name='Operator'  id='Operator'>
             <option value='sum'>Суммирование</option>
             <option value='avg'>Среднее</option>
             <option value='min'>Минимальное</option>
             <option value='max'>Максимальное</option>
            </select>
          </td>
         </tr>

         <tr>
         <td></td>
          <td>
          <br/>

           <?
           if ($proc=='add')
           {
           ?>
           <input type='submit' name='добавить' value='добавить'/>
           <?
           }
           else
           {
               ?>
               <input type='hidden' name='id' value="<?=$id ?>"/>
               <input type='submit' name='добавить' value='изменить'/>     <br/><br/>
               <input type='button' name='добавить' value='удалить' onClick='Del()'/>
               <?

           }
           ?>
          </td>
         </tr>

         <tr>
          <td colspan="2" class='txt_lite'>
          <hr size='0'/>
          <br/>
          <b>Родительский отчет</b> - в этом поле указывается номер отчета который будет родительским для создаваемого. Эта информация нужна для правильного формирования дерева отчетов. Если не заполнить поле то отчет будет помещен в корневую ветку.<br/>
          <br/>
          <b>SQL</b> - обязательное поле. Должно содержать SQL-код осуществляющий нужную вам выборку данных. Обязательные поля: dt (дата и время), val (значение). Необязательное поле: det (детализация)
          <br/><br/>
          <b>Дробление</b> - определяет как будет сгруппирована информация, по дням неделям, месяцам...
          <br/><br/>
          <b>С детализацией</b> - в этом поле имеет смысл проставлять галочку если вы хотите видеть детализацию в отчете. При этом обязательно в SQL запросе должно учавствовать поле det.
           <br/><br/>
          <b>Принцип группировки</b> - здесь выбирается как будут обрабатваться значения при группировке. К примеру, они могут суммироваться или браться среднее значение.



          </td>
         </tr>

        </table>
        </form>

 </td>
 </tr>
 </table>
